.TH "DAHDI_SPAN_TYPES" "8" "23 Jan 2014" "" ""

.SH NAME
dahdi_span_types \- set line modes of DAHDI spans before assignment
.SH SYNOPSIS

.B dahdi_span_types [\fIoptions\fB] <list|dumpconfig|compare|set> \fB[\fIdevpath \fB...]

.SH DESCRIPTION
The span type (the line mode: E1/T1/J1) must be set to a span before
DAHDI assigns it a span number, as E1 spans use more channels.
\fBdahdi_span_types\fR applies the span type configuration to an
un-assigned span.

Using it only makes sense when the kernel module parameter
\fBdahdi.auto_assign_span\fR is unset, otherwise DAHDI automatically
assign span numbers during device registration.

.B dahdi_span_types
takes a command and an optional list of devices. If no device is given,
the command is applied to all devices.

The device is marked as a path in the SysFS tree.

.SH OPTIONS

.B \-h|\-\-help
.RS
Output usage message and exit
.RE

.B \-n|\-\-dry\-run
.RS
During \fB"set"\fR operation, only show what would be done, without actually
changing anything.
.RE

.B \-v|\-\-verbose
.RS
During \fB"set"\fR operation, show the actions that are being performed.
.RE

.BI \-\-line\-mode= <E1|T1|J1>
.RS
During \fB"dumpconfig"\fR operation, force special generation mode:
.IP \(bu 3
First, generates a "wildcard" entry with the fiven \fBline\-mode\fR.
.IP \(bu 3
Comment out all span entries. Each of them may be manually un-commented
to override the "wildcard".
.RE

.SH SUB-COMMANDS
.B set
.RS
Reads settings from \fBspan\-types.conf\fR and applies them to the
device(s) specified in the command line (or all devices, if none
specified).
.RE

.B compare
.RS
Compare the settings on the system to those in the configuration file.
For each line that applies to a device on the system, print it if the
value to be set and the active value on the system differ.

The exit status is 0 if there is no difference and non-zero if a
difference was detected.
.RE

.B list
.RS
List line modes for all spans in the system which may be set with
dahdi_span_types (E1/T1/J1 spans).
.RE

.B dumpconfig
.RS
List types for the spans in a format fit to be used in
\fBspan\-types.conf\fR. Use this to generate a configuration file after
you have (perhaps manually) set all existing spans.

.B dahdi_genconf spantypes
uses this command internally.
.RE

.SH CONFIGURATION
.SS General structure
.B span\-types.conf
is a file with lines specifying line modes of spans.

Empty lines or lines beginning with '#' are ignored.

Each line is in the format of:

.I ID		spanspec ...

The \fIID\fR field specifies the DAHDI device and the \fIspanspecs\fR
define the line modes of its spans. A line may have multiple
\fIspanspecs\fR in a single line (though dumpconfig generates a
configuration with one per line).

.SS Span Identifier
A DAHDI device may be specified either by a hardware identifier (a
software readable serial number or whatever) or the location in which
it is installed on the system. The former makes it simpler to change
connector / slot whereas the latter makes it simpler to replace a unit.

The value in this field is matched (when the command \fBset\fR is
used) to the following values:

 \fIhwid\fR
 \fB@\fIlocation\fR
 \fIdevpath\fR

See above for their descriptions. The value may include shell wildcards:
*, ? and [], which are used in the match. The values to be matched are
first cleaned up: '!' is replaced with '/' and any character not in
"a\-zA\-Z0\-9/:.\-" is replaced by "_".

Note that while span\-types.conf allows an arbitrarily-complex
combination of E1, J1 and T1 ports, it would normally have just a single
wildcard line setting the line mode (the first line in the example below).

.SS Span Specification

Each line should have one or more span specifications: this is the value
used to set span type with DAHDI in the SysFS interface. A
specification has two colon-separated fields:

.I rel_span_no:span_type

for instance, the following are four span specifications specify ports 1
and 2 as E1 and ports 3 and 4 as T1: [12]:E1 [34]:T1 .

.B rel_span_no
.RS
The relative number of the span in the device. E.g.: port number.
This field may contain shell wildcards (*, ? and [])
.RE

.B span_type
.RS
E1/T1/J1
.RE

.SS Multiple matches
During \fBset\fR operation, the \fBdahdi_span_types\fR applies all
matching settings to a span. This is done in the order of lines in the
configuration files.

Thus, if there are multiple matches to a span -- the last match
will \fIwin\fR (all will be applied to the kernel in order. The last
one in the file will be applied last).

Example:
.EX
*             *:T1      # All spans on all devices will be T1
usb:X1234567  [34]:E1   # Except spans 3,4 on the device which will be E1
.EE


.SH ENVIRONMENT

.B DAHDICONFDIR
.RS
The directory in which span\-types.conf resides. /etc/dahdi if not
overridden from the environment.
.RE

.B DAHDISPANTYPESCONF
.RS
The path to span\-types.conf resides. /etc/dahdi/span\-types.conf if
not overridden from the environment.
.RE


.SH FILES

.B /etc/dahdi/span\-types.conf
.RS
The default location for the configuration file.
.RE

.B /sys/bus/dahdi_devices/devices/\fIdevice\fR
.RS
SysFS node for the device. In this directory reside the following
files, among others:

.B spantype
.RS
read/write file. Reading from it returns current configuration for spans
of the device. Span-specifications can be written to it to change line
modes (but only for a span that is not assigned yet).
.RE


.SH SEE ALSO
dahdi_span_assignments(8), dahdi_genconf(8), dahdi_cfg(8)

.SH AUTHOR
dahdi_span_types was written by Oron Peled.  This manual page was
written by Tzafrir Cohen. Permission is granted to copy, distribute
and/or modify this document under the terms of the GNU General Public
License, Version 2 any  later version published by the Free Software
Foundation.

